const { defineConfig } = require('@vue/cli-service')

// Vue 脚手架的配置文件  
// 修改这个文件必须重启 

// Vue 项目的相关配置文件   (记住 修改了配置文件 必须重启服务器 )
// 跨域    (主机  端口  协议 )
// JSONP   CORS   反向代理   
// 用了反向代理  不能使用基路径  (永久跟随) 

// 代理目标 只能协议+域名
module.exports = defineConfig({
  transpileDependencies: true,
  lintOnSave:false ,   // 去除ESLINT 警告  
  publicPath:"",  // 设置打包相对路径  上线
  pwa: {
      iconPaths: {
        favicon32: 'favicon.ico',
        favicon16: 'favicon.ico',
        appleTouchIcon: 'favicon.ico',
        maskIcon: 'favicon.ico',
        msTileImage: 'favicon.ico'
      }
  },
  devServer:{
     host:"localhost",
     port:7000,
     open:true, // 自动打开浏览器
     hot:true,  // 热替换  自动刷新 
     proxy:{   // 反向代理  
        // 设置反向代理对象  双面代理  前端代理前端服务器的接口地址   请求后端的代理后端的服务器接口 
        "/gateway":{    // 代理对象  
          target:"https://m.maizuo.com"   // 代理目标
        },
        "/yun":{
          target:"http://47.104.209.44:3333",  // 代理目标
          pathRewrite:{
            "^/yun":"" // 设置随意的代理对象  yun 重置为 空  
          }
        },
        "/api":{
          target:"http://localhost:2116",  // 代理目标
          pathRewrite:{
            "^/api":"" 
          }
        },
        "/maoer":{
          target:"https://www.missevan.com",  // 代理目标
          pathRewrite:{
            "^/maoer":"" 
          }
        },
        "/mobile":{    // 代理对象  
          target:"https://www.welan.com"   // 代理目标
        },
     }
  },
  chainWebpack:config=>{
    config.module
    .rule('scss')  // 基于SCSS 
    .oneOf('vue')
    .use('px2rem-loader')
    .loader('px2rem-loader')
    .before('postcss-loader')
    .options({ remUnit: 37.5  }) // 这里的16数字要和rem.js里面的一致  网易 100 淘宝 75   vantUI设计稿 375 
    .end()
  },
})
